package com.ticket.sass.admin.dto.input.config;

import com.ticket.sass.admin.validator.InEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * @author ywb
 * @date 2024-03-25 10:26
 */
@Data
@ApiModel
public class TicketRefundRuleInput {
    @NotNull(message = "取票状态不能为空")
    @InEnum(intValues = {0, 1})
    @ApiModelProperty(value = "取票状态：0未取票，1不限", example = "0")
    private Short takeTicketStatus;
    
    @NotNull(message = "开场范围不能为空")
    @InEnum(intValues = {0, 1})
    @ApiModelProperty(value = "开场范围：0开场前，1开场后", example = "0")
    private Short startScope;
    
    @NotNull(message = "时长不能为空")
    @ApiModelProperty(value = "时长（分钟）", example = "120")
    private Integer duration;
    
    @NotNull(message = "时长范围不能为空")
    @InEnum(intValues = {0, 1})
    @ApiModelProperty(value = "时长范围，0大于N分钟，1小于等于N分钟")
    private Short durationScope;
    
    @NotNull(message = "退改范围不能为空")
    @InEnum(intValues = {0, 1, 2})
    @ApiModelProperty(value = "退改范围：0不允许，1 N元/张，2免费", example = "1")
    private Short scope;
    
    @ApiModelProperty(value = "退改手续费，N元/张", example = "10.50")
    private BigDecimal serviceCharge;
}
